An adaptive equalizer or adaptive filter is utilized to identify, from an input signal to a target unknown system and a response signal therefrom, a transfer function of the unknown system by an adaptive algorithm, and is extensively used in various signal processing systems.
For example, an echo canceller is used to identify the transfer function of an echo path and thereby predict an echo signal from a signal which is the source of echo, and cancel the echo signal. In addition, an active noise control device is used to identify the transfer function of a noise path and thereby predict incoming noise from an acoustic signal of a noise source, and generate an acoustic signal opposite in phase to the noise and thereby cancel out the noise.
A factor of blocking identification of the unknown system by the adaptive equalizer includes a disturbance mixed in a response signal from the unknown system to be observed. For example, in the case of the echo canceller, background noise or near-end speaker's voice which is superimposed on echo becomes disturbance to the adaptive equalizer in terms of performing identification of an echo path, and reduces performance of the echo canceller (particularly, a phenomenon in which a near-end speaker's voice and echo are superimposed on each other on a signal is called double-talk).
In addition, when such an equalizer is provided in an active noise control device, sound other than target noise may become disturbances. For example, in the case of canceling out noise of a blast fan in a blast duct, sound other than that of the blast fan picked up by an error detection microphone provided in the duct (e.g. operating sound of other mechanical devices, voice of a person nearby, etc.) becomes a disturbance to an adaptive equalizer in terms of performing identification of a noise path. Such noise may become a factor of reducing the noise reduction effect.
In general, as measures against such disturbances, a method of adjusting the update speed of the filter coefficients of an adaptive equalizer by providing a predetermined update step size is employed. In this case, the update formula for the filter coefficients of the adaptive equalizer can be represented as a formula (1) shown below:ĥ(n+1)=ĥ(n)+με(n)  (1)where ĥ(n) is the filter coefficients of the adaptive equalizer and is represented by the following formula (2):ĥ(n)=[h0(n),h1(n), . . . ,hN-1(n)]T  (2)
In formula (2), “N” indicates a filter order, and “n” is a subscript representing time series. When n=0 at the initial time point, the coefficient sequence in formula (2) is given some initial values. Furthermore, “μ” represents an update step size and “ε(n)” represents the amount of update to the filter coefficients given by a predetermined adaptive algorithm. As an example of ε(n), when the NLMS (Normalized Least Mean Squares) algorithm which is commonly well known is used, ε(n) is represented by the following formula (3):
                              ɛ          ⁡                      (            n            )                          =                                            d              ⁡                              (                n                )                                      ⁢                          x              ⁡                              (                n                )                                                          N            ⁢                                                  ⁢                          σ              x              2                                                          (        3        )            
Note that “x(n)” is an input signal and is represented by the following formula (4):x(n)=[x(n),x(n−1), . . . ,x(n−N+1)]T  (4)
In addition, σx2 represents the variance of the input signal x(n) to the unknown system. Note that in the actual computation, approximately, the following formula (5) is often set up:Nσx2≈xT(n)x(n)  (5)
The right side of formula (5) is the signal power of the input signal x(n), and “d(n)” is the residual signal obtained using the filter coefficients before an update.
In formula (1), by setting the update step size μ to a smaller value, the speed of a coefficient update can be retarded, and thereby the influence of disturbances can be reduced. As a result, the convergence value of identification error (i.e. error in filter coefficients) can be made smaller. On the other hand, since a coefficient update becomes slow, for example, when starting from an initial state or immediately after the transfer function of the unknown system is changed, a larger number of updates is required before the identification error converges. Hence, the update step size μ needs to be set such that convergence characteristics according to a purpose can be obtained.
It is often the case that the update step size μ is set to a constant, but the update step size μ can also be changed according to the situation. For example, Patent Document 1 shown later proposes an echo canceller that changes an update step size μ so as to always converge to required identification error regardless of the disturbance condition.
However, in the echo canceller described in Patent Document 1, since the update step size μ is determined according to the required value of identification error, the echo canceller has the property that the update step size μ also increases or decreases in accordance with magnitude of the required value. As a result, the smaller the desired identification error, the smaller the value of the update step size μ. By this, a coefficient update becomes slow and thus a larger number of updates are required for convergence of identification error, causing a problem that an update takes time.
In addition, Non-Patent Document 1 shown later suggests that an update step size value μopt that reduces identification error to a minimum is approximately represented by the following formula (6):
                              μ          opt                ≈                              σ            e            2                                σ            d            2                                              (        6        )            
where σd2 represents the variance of a residual signal of the adaptive equalizer including a disturbance, and σe2 represents the variance of an error signal in which the disturbance is removed from the residual signal. When a variance of the disturbance is represented by σv2, the above-mentioned σd2 is represented by the following formula (7):σd2=σe2+σv2  (7)
However, although σd2 are unknown and thus cannot be directly observed, σv2 and σe2 are unknown and cannot be observed directly. Therefore, μopt cannot be directly obtained from the above-described formula (6). Hence, Non-Patent Document 1 proposes a method in which a time-varying cross-correlation value between the power of an estimated response signal of an unknown system by an adaptive equalizer and the power of a residual signal is determined for each frequency component, and the ratio in power between the estimated response signal and the residual signal is multiplied by the cross-correlation value, thereby determining the estimated value of μopt.
However, in general, a signal with a sufficient length is required to accurately observe a correlation value. In particular, it is difficult to accurately observe a momentary cross-correlation value for an nonstationary signal such as sound. Therefore, in the method disclosed in Non-Patent Document 1, due to error in observed cross-correlation value, accurate μopt cannot be obtained, and an update step size which is a bit higher or lower than the accurate μopt is calculated, causing a problem that identification error cannot be reduced rapidly or to a sufficiently small level.